Also wir haben uns gestern angeschaut, wie wir mit den recurrenten Netzen umgehen wollen.
Und da ist ganz deutlich rausgekommen, dass ich bei diesem Prinzip des bissianischen
Modelings ganz viel über die Modellklassen und zwar durch Nachdenken über die Modellklassen
a priori Formulierungen finden will und nicht erst, dass nur die Daten die Modelle bestimmen.
Das ist auch wichtig und gerade heute besonders wichtig in dem was ich darstelle, aber ganz
wichtiger Punkt gestern war eben wie kann ich durch Nachdenken gute Modellklassen spezifizieren.
Das ist bei viel Vorwärtsnetzen schon vorgekommen, bei Rekorenten jetzt ist noch viel wichtiger.
Ja gut, dann haben wir eine kurze Wiederholung gemacht und diese zwei Betrachtungsweisungen,
was ist das Design von normalen Netzen und wie mache ich dann das tatsächliche Rechnen.
Das wiederholt sich bei den Rekorenten Netzen ja da auch, nur dass das Design der Architektur
und dann ganz viel komplizierter ist und das Lernen soll aber immer dieses Korrespondenzprinzip
beinhalten, sprich ich will nur Algorithmen haben, die lokal innerhalb von der Architektur
hier arbeiten.
Wenn ich was anderes nehmen würde, dann könnte ich das nicht tausendmal so kompliziert machen
und dass das noch antarper wäre.
So und dann haben wir den Existenzbeweis angeguckt und hier war eine falsche Folie.
Hier war schon eine Folie drin, wo ich Schert Weitz mit dabei hatte, das wollte ich an der
Stelle gar nicht haben.
Deswegen hier ist also jetzt die Folie, die dahingehört hätte, nämlich man rechnet
den Vorwärtspass hier durch die Neuronencluster und durch die Konnektoren durch.
Cluster ist immer ein Vektor, in dem irgendwas gemacht werden kann, zum Beispiel hier eine
Nichtlinierität angewandt werden kann und ein Konnektor ist immer eine Matrix-Multiplikation
in meiner Darstellung, nicht einfach nur ein Informations-Transport, sondern immer eine
Matrix-Multiplikation.
Also hier ist es die erste Matrix, hier oben ist die zweite Matrix, dann kommt halt oben
irgendwie ein Ausgangsvektor raus, den vergleiche ich mit dem Target-Vektor und die Deviation
zwischen beiden, das ist ja dann sozusagen die erste Ableitung von der Errorfunktion
hier, also wenn ich hier die erste Ableitung der Errorfunktion bilden würde, dann hätte
ich ja gerade Output minus Target-Wert und dann kämen die inneren Ableitungen Delta-Output
nach Delta-Gewichten da unten drin.
Aber wenn wir jetzt erst mal hier oben anfangen, dann haben wir Output minus Target da stehen
und dann rechnen wir rückwärts durch die ganze Architektur durch, indem ich immer entgegengesetzt
zu den Pfeilen laufend, wenn ich hochgelaufen bin.
Das erste, wo ich durch muss, ist hier dieses Cluster, wenn da eine Nicht-Linerität gewesen
wäre, müsste ich die Linearisierung davon nehmen, mit der Deviation hier multiplizieren.
Wenn hier eben keine Nicht-Linerität mehr ist, heißt das ja F2 ist it, sondern ist die
erste Ableitung ja einfach eins.
Und dann habe ich eine Größe, die hängt unterhalb von diesem Cluster, also Deviation
sind wir oben, Delta ist unter und diese Größe wird dann rückwärts gerechnet gegen die
lineare Algebra auf der linken Seite.
Dafür muss man eine Transponierung bilden.
Das ist zwingend logisch, nicht jetzt, weil ich es schön finde, sondern das sieht man,
wenn man die Einzelgleichungen anguckt, die ich im letzten Semester erklärt habe.
So und dann habe ich wieder was, was auch oberhalb von so einem Cluster sitzt, nämlich sozusagen
eine Deviation eins tiefer.
Dann gehe ich wieder das Cluster durch, Linearisierung von der linken Seite und dann gehe ich hier
rückwärts gegen die Matrix, wieder mit dem Transponierten und dann komme ich schließlich
endlich hier unten raus.
Und dann kann man sich überlegen, dass als Kreuzprodukt von dem Vorwärts- und dem Rückwärtsfluss
hier alle Ableitungen der Errorfunktion nach den Gewichten hier oben ausgerechnet werden
Presenters
Zugänglich über
Offener Zugang
Dauer
00:34:37 Min
Aufnahmedatum
2021-04-07
Hochgeladen am
2021-04-07 11:16:54
Sprache
de-DE